package com.meta.platform.contract.core.mapper;


import com.meta.platform.contract.intf.entity.ContractInvoice;
import com.meta.platform.contract.intf.ro.ContractInvoiceRo;

import java.util.List;

/**
 * 合同发票表
 *
 * @author M.simple
 * @email 1111111111111@qq.com
 * @date 2020-12-08 15:53:38
 */
public interface ContractInvoiceMapper {

	/**
	 * insert contractInvoice info
	 * @method insertContractInvoice
	 * @param       contractInvoice:
	 * @return void
	 * @author      M.simple
	 * @date        2020-12-08 15:53:38
	 */
	void insertContractInvoice(ContractInvoice contractInvoice);

	/**
	 * batchInsert contractInvoice info
	 * @method insertContractInvoice
	 * @param       contractInvoice:
	 * @return void
	 * @author      M.simple
	 * @date        2020-12-08 15:53:38
	 */
	void batchInsertContractInvoice(List<ContractInvoice> contractInvoices);

	/**
	 * update contractInvoice info
	 * @method updateContractInvoice
	 * @param       contractInvoice:
	 * @return int
	 * @author      M.simple
	 * @date        2020-12-08 15:53:38
	 */
	int updateContractInvoice(ContractInvoice contractInvoice);

	/**
	 * update contractInvoice info by Pk
	 * @method updateContractInvoiceByPk
	 * @param       contractInvoice:
	 * @return int
	 * @author      M.simple
	 * @date        2020-12-08 15:53:38
	 */
	int updateContractInvoiceByPk(ContractInvoice contractInvoice);

	/**
	 * list contractInvoice info
	 * @method listContractInvoice
	 * @param       contractInvoice:
	 * @return List<ContractInvoice>
	 * @author      M.simple
	 * @date        2020-12-08 15:53:38
	 */
	List<ContractInvoice> listContractInvoice(ContractInvoiceRo contractInvoiceRo);

}
